With the recent development of robot technology, robots are replacing humans to do complicated tasks such as assembly of industrial products. Assembling a product by a robot requires measuring the position, orientation, and three-dimensional shape of a target component.
For this purpose, there is proposed a method of reconstructing the three-dimensional shape of an object from a range image which holds a distance value for each pixel and is obtained by analyzing reflected light of light irradiating a target object. Also, a method of measuring the position and orientation of a target object using the three-dimensional shape model of an object is proposed. In these methods, correspondences between a plurality of range images or those between measurement points obtained from a range image and the surface of a shape model are searched. The distances between the correspondences are minimized to align measurement point groups and estimate the position and orientation of the target object.
In an environment where a target object and an object other than the target one coexist, a correspondence error readily occurs when searching for correspondences between measurement points and a shape model and those between measurement point groups. Even if the distance between erroneous corresponding points is minimized, no correct geometric relationship can be obtained, resulting in an alignment failure or unstable calculation.
To reduce the influence of the correspondence error, M-estimation is often used to apply a weight based on a statistical value pertaining to the distance between corresponding points, as described in “Robust ICP Registration Algorithm Extended by M-estimation” (Kondo, Miyamoto, Kaneko, Igarashi, IEICE Technical Report, Pattern Recognition and Media Understanding (PRMU), vol. 100, no. 507, pp. 21-26, 2001). This method assumes that a corresponding point apart from the average is less reliable. The weight is thus set large for a distance between correspondences close to the average and small for one apart from the average, thereby reducing the influence on alignment. This method is very effective for reducing the influence of noise such as an outlier.
However, when the distance between erroneous corresponding points due to occlusion is not so different from that between correct corresponding points, this method generates a correspondence error and cannot discriminate it from a correct correspondence. For example, a method disclosed in “A method for registration of 3-D shapes,” (J. Besl and N. D. McKay, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 14, no. 2, pp. 239-256, 1992) needs to search for a point of a shape model that is closest to a measurement point based on the approximate values of the position and orientation of a target object. At this time, if an occluding object occludes the target object, measurement points on the occluding object may be determined as those on the target object which are occluded and cannot be observed, and may be made to erroneously correspond to points of the shape model. Especially when the occluding object is a thin object or when noise or the deviation of the approximate position and orientation is large, the distance between erroneous corresponding points owing to occlusion becomes less different from that between correct corresponding points. In this case, it is difficult for M estimation to reduce the influence of the correspondence error caused by occlusion.